#ifndef PLAYSTATE_H
#define PLAYSTATE_H
#include <Ogre.h>
#include "GameState.h"
#include "Singleton.h"

class PlayState : public GameState, public Singleton<PlayState>
{
public:
    PlayState();
    ~PlayState();

    void init();
    void exit();

    bool frameStarted(const Ogre::FrameEvent &evt);
    bool keyPressed(const OIS::KeyEvent &e);
    bool keyReleased(const OIS::KeyEvent &e);

    bool mouseMoved(const OIS::MouseEvent &e);
    bool mousePressed(const OIS::MouseEvent &e, OIS::MouseButtonID id);
    bool mouseReleased(const OIS::MouseEvent &e, OIS::MouseButtonID id);

private:
    int mSDwon;
    int mSpeed;
    int mMove;
    Ogre::Vector3 mTranslateVector;
    std::vector<Ogre::Entity*> mEntities;
    Ogre::SceneNode* node;
//    bool mShutDown;
};

#endif // PLAYSTATE_H
